package com.wan.javanew;

import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

/**
 * java8新特性 Lambda 表达式
 *
 */
public class JavaNewLambda {
    public static void main(String[] args) {
        //以往的 list排序
        List<Integer> list = Arrays.asList(1,2,3,4);
        Collections.sort(list, new Comparator<Integer>() {
            @Override
            public int compare(Integer o1, Integer o2) {
                return o2-o1;
            }
        });
        System.out.println(list);

        //lambda表达式
        Collections.sort(list,(Integer a,Integer b) ->{
            return a-b;
        });
        System.out.println(list);
        //对于函数体只有一行代码的，你可以去掉大括号{}以及return关键字
        //Java编译器可以自动推导出参数类型，所以你可以不用再写一次类型
        Collections.sort(list,(a,b) -> b-a);
        System.out.println(list);
    }
}
